package com.jqq.arrays_;

import java.util.Arrays;
import java.util.Comparator;

/**
 * @author 姬倩倩
 * @version 1.0
 */
public class ArrayMethod01 {
    public static void main(String[] args) {
        Integer[] integers = {1, 20, 90};
        //遍历数组
        for (int i = 0; i < integers.length; i++) {
            System.out.println(integers[i]);
        }
        //直接使用Arrays.toString方法，显示数组
        System.out.println(Arrays.toString(integers));

        //演示sort方法的使用
        Integer[] arr = {1, -1, 7, 0, 89};
        System.out.println(Arrays.toString(arr));
        //使用Arrays提供的sort方法排序
        //因为数组是引用类型，所以通过sort排序后，会直接影响到实参arr
        Arrays.sort(arr);
        System.out.println("===排序后===");
        System.out.println(Arrays.toString(arr));

        //sort方法是重载的，也可以通过传入一个接口 Comparator实现自定义排序方式
        System.out.println("===自定义排序===");
        Arrays.sort(arr, new Comparator() {
            @Override
            public int compare(Object o1, Object o2) {
                Integer i1 = (Integer)o1;
                Integer i2 = (Integer)o2;
                return i2 - i1;
            }
        });
        System.out.println("===排序后===");
        System.out.println(Arrays.toString(arr));
    }
}
